package mx.gob.imss.reiman.clientes.model;

import java.io.Serializable;

/**
 * 
 * @author Alberto Dzul Calvillo
 * @version 1.0
 * 
 */
public class Medicamento implements Serializable {
	private static final long serialVersionUID = 1L;
	private String cveMedicamento;
	private String fechaSuministro;
	private String viaSuministro;
	private String dosisSuministrada;

	public Medicamento() {
		super();
		this.cveMedicamento = "";
		this.fechaSuministro = "";
		this.viaSuministro = "";
		this.dosisSuministrada = "";
	}

	public Medicamento(String cveMedicamento, String fechaSuministro,
			String viaSuministro, String dosisSuministrada) {
		super();
		this.cveMedicamento = cveMedicamento;
		this.fechaSuministro = fechaSuministro;
		this.viaSuministro = viaSuministro;
		this.dosisSuministrada = dosisSuministrada;
	}

	public String getCveMedicamento() {
		return cveMedicamento;
	}

	public void setCveMedicamento(String cveMedicamento) {
		this.cveMedicamento = cveMedicamento;
	}

	public String getFechaSuministro() {
		return fechaSuministro;
	}

	public void setFechaSuministro(String fechaSuministro) {
		this.fechaSuministro = fechaSuministro;
	}

	public String getViaSuministro() {
		return viaSuministro;
	}

	public void setViaSuministro(String viaSuministro) {
		this.viaSuministro = viaSuministro;
	}

	public String getDosisSuministrada() {
		return dosisSuministrada;
	}

	public void setDosisSuministrada(String dosisSuministrada) {
		this.dosisSuministrada = dosisSuministrada;
	}

	@Override
	public String toString() {
		return "Medicamento [cveMedicamento=" + cveMedicamento
				+ ", fechaSuministro=" + fechaSuministro + ", viaSuministro="
				+ viaSuministro + ", dosisSuministrada=" + dosisSuministrada
				+ "]";
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result
				+ ((cveMedicamento == null) ? 0 : cveMedicamento.hashCode());
		result = prime
				* result
				+ ((dosisSuministrada == null) ? 0 : dosisSuministrada
						.hashCode());
		result = prime * result
				+ ((fechaSuministro == null) ? 0 : fechaSuministro.hashCode());
		result = prime * result
				+ ((viaSuministro == null) ? 0 : viaSuministro.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj) {
			return true;
		}
		if (obj == null) {
			return false;
		}
		if (!(obj instanceof Medicamento)) {
			return false;
		}
		Medicamento other = (Medicamento) obj;
		if (cveMedicamento == null) {
			if (other.cveMedicamento != null) {
				return false;
			}
		} else if (!cveMedicamento.equals(other.cveMedicamento)) {
			return false;
		}
		if (dosisSuministrada == null) {
			if (other.dosisSuministrada != null) {
				return false;
			}
		} else if (!dosisSuministrada.equals(other.dosisSuministrada)) {
			return false;
		}
		if (fechaSuministro == null) {
			if (other.fechaSuministro != null) {
				return false;
			}
		} else if (!fechaSuministro.equals(other.fechaSuministro)) {
			return false;
		}
		if (viaSuministro == null) {
			if (other.viaSuministro != null) {
				return false;
			}
		} else if (!viaSuministro.equals(other.viaSuministro)) {
			return false;
		}
		return true;
	}
}